para marca
limpa(3,0,24,80,cor,.f.)
limpa(3,0,23,79,cor,.t.)
declare cabeca[4], estrutura[4]
sele bancos
go top
cabeca[1]  = 'CODIGO'       ; estrutura[1] = fiel(1) 
cabeca[2]  = 'NOME'         ; estrutura[2] = fiel(2)
cabeca[3]  = 'AGENCIA'      ; estrutura[3] = fiel(3)
cabeca[4]  = 'C/CORRENTE'   ; estrutura[4] = fiel(4)
menu(24,0,' Inclui ',2,1)
menu(24,8,'Altera ',1,1)
menu(24,15,'Exclui ',1,1)
menu(24,22,'Relatorio ',1,1)
menu(24,32,'Procura ',1,1)
menu(24,72,'Esc-Sai ',1,3)
dbedit(5,2,22,78,estrutura,'ban100','@X',cabeca,.T.)
retu

function ban100(modo,coluna)

set cursor on
if modo = 0 .or. modo = 3
   retu(1)
endif
telalocal=savescreen(4,1,24,80)
tecla = lastkey()
do case
   case tecla = 5 .and. modo = 1

    mensa(10,'Inicio do arquivo ',2)
    retu(2)

   case tecla = 24 .and. modo = 2

    mensa(10,' Final do arquivo ',2)
    retu(2)

   case tecla = 27 

    retu(0)

   case tecla = 13 .and. marca = .t.

    retu(0)

   case tecla = 73 .or. tecla = 105

    while .t.
       sele bancos
       sombra(8,6,22,78,'Inclusao')
       mcodigo = 0               
       @ 10,8 say 'Codigo        :' get mcodigo pict '99'      
       read
       if empty(mcodigo)
          exit
       endif
       seek mcodigo   
       if .not. eof()
          mensa(10,'Banco ja cadastrado',2)
          loop
       endif
       inicializa()
       @ 11,8  say 'Nome          :' get mnome    pict '@!'
       @ 12,8  say 'Agencia       :' get magencia pict '@!'   
       @ 13,8  say 'C/Corrente    :' get mconta   pict '@!'   
       read
       if confirma(18,60,' 1 - Confirma',' 2 - Cancela ')
          appe blank
          if inclusao()
             grava()
             unlock
          endif
       endif
    enddo
    retu(2)

   case tecla = 65 .or. tecla = 97

     sele bancos
     mcodigo = codigo           
     sombra(8,6,22,77,'Alteracao')
     inicializa()
     @ 10,8  say 'Codigo        : ' + strzero(codigo,2)
     @ 11,8  say 'Nome          :' get mnome    pict '@!'
     @ 12,8  say 'Agencia       :' get magencia pict '@!'
     @ 13,8  say 'C/Corrente    :' get mconta   pict '@!'
     read
     if confirma(18,60,' 1 - Confirma ',' 2 - Cancela  ')
        if alteracao()
           grava()
           unlock
        endif
     endif

   retu(2)

   case tecla = 82 .or. tecla = 114

      sele bancos
      sombra(6,4,22,78,'Relatorio')
      mtitulo = .t.
      mpagina = 1
      sele bancos
      go top
      while .not. eof()
       set devi to printer
       if mtitulo
          tit_rela('Bancos',mpagina)
          mtitulo = .f.
       endif
       @ prow()+2,04 say strzero(codigo,2) + '-' + nome          
       @ prow()+1,04 say agencia  
       @ prow()+1,04 say conta      
       skip
       if prow() > 54
          eject
          mtitulo = .t.
          mpagina++
       endif
      enddo
      eject
      set devi to screen
      retu(2)


  otherwise

    retu(1)

endcase


